package com.winshare.saleAssistant.mapper;

import com.winshare.saleAssistant.domain.dto.req.*;
import com.winshare.saleAssistant.domain.entity.BannerDO;
import com.winshare.saleAssistant.domain.query.BannerQuery;
import com.winshare.saleAssistant.domain.dto.resp.BannerRespDTO;
import org.mapstruct.Mapper;
import org.mapstruct.ReportingPolicy;
import org.mapstruct.factory.Mappers;

import java.util.List;

@Mapper(unmappedTargetPolicy = ReportingPolicy.IGNORE)
public interface BannerMapStruct {

    BannerMapStruct INSTANCE = Mappers.getMapper(BannerMapStruct.class);

    BannerDO fromBannerCreateDTO(BannerCreateDTO bannerCreateDTO);

    BannerDO fromBannerUpdateDTO(BannerUpdateDTO bannerUpdateDTO);

    BannerQuery fromBannerQueryDTO(BannerQueryDTO bannerQueryDTO);

    BannerRespDTO fromBannerDO(BannerDO bannerDO);

    List<BannerRespDTO> fromBannerDOList(List<BannerDO> bannerDOList);

    BannerDO fromBannerIdDTO(BannerIdDTO bannerIdDTO);

    BannerDO fromBaseIdDTO(BaseIdDTO baseIdDTO);
}
